home *** CD-ROM | disk | FTP | other *** search
/ AmigActive 10 / AACD 10.iso / AACD / Games / MAME / src / sound / 3812intf.h < prev    next >
C/C++ Source or Header  |  2000-04-10  |  2KB  |  69 lines

  1. #ifndef YM3812INTF_H
  2. #define YM3812INTF_H
  3.  
  4.  
  5. #define MAX_3812 2
  6. #define MAX_8950 MAX_3812
  7.  
  8. struct YM3812interface
  9. {
  10.     int num;
  11.     int baseclock;
  12.     int mixing_level[MAX_3812];
  13.     void (*handler[MAX_3812])(int linestate);
  14. };
  15.  
  16. struct Y8950interface
  17. {
  18.     int num;
  19.     int baseclock;
  20.     int mixing_level[MAX_8950];
  21.     void (*handler[MAX_8950])(int linestate);
  22.     /* Y8950 */
  23.     int rom_region[MAX_8950]; /* delta-T ADPCM ROM region */
  24.     mem_read_handler keyboardread[MAX_8950];
  25.     mem_write_handler keyboardwrite[MAX_8950];
  26.     mem_read_handler portread[MAX_8950];
  27.     mem_write_handler portwrite[MAX_8950];
  28. };
  29.  
  30. #define YM3526interface YM3812interface
  31.  
  32. /* YM3812 */
  33. READ_HANDLER( YM3812_status_port_0_r );
  34. WRITE_HANDLER( YM3812_control_port_0_w );
  35. WRITE_HANDLER( YM3812_write_port_0_w );
  36. READ_HANDLER( YM3812_status_port_1_r );
  37. WRITE_HANDLER( YM3812_control_port_1_w );
  38. WRITE_HANDLER( YM3812_write_port_1_w );
  39.  
  40. int YM3812_sh_start(const struct MachineSound *msound);
  41. void YM3812_sh_stop(void);
  42. void YM3812_sh_reset(void);
  43.  
  44. /* YM3526 */
  45. #define YM3526_status_port_0_r YM3812_status_port_0_r
  46. #define YM3526_control_port_0_w YM3812_control_port_0_w
  47. #define YM3526_write_port_0_w YM3812_write_port_0_w
  48. #define YM3526_status_port_1_r YM3812_status_port_1_r
  49. #define YM3526_control_port_1_w YM3812_control_port_1_w
  50. #define YM3526_write_port_1_w YM3812_write_port_1_w
  51. int YM3526_sh_start(const struct MachineSound *msound);
  52. #define YM3526_sh_stop YM3812_sh_stop
  53. #define YM3526_shupdate YM3812_sh_update
  54.  
  55. /* Y8950 */
  56. #define Y8950_status_port_0_r YM3812_status_port_0_r
  57. #define Y8950_control_port_0_w YM3812_control_port_0_w
  58. READ_HANDLER( Y8950_read_port_0_r );
  59. #define Y8950_write_port_0_w YM3812_write_port_0_w
  60. #define Y8950_status_port_1_r YM3812_status_port_1_r
  61. #define Y8950_control_port_1_w YM3812_control_port_1_w
  62. READ_HANDLER( Y8950_read_port_1_r );
  63. #define Y8950_write_port_1_w YM3812_write_port_1_w
  64. int Y8950_sh_start(const struct MachineSound *msound);
  65. #define Y8950_sh_stop YM3812_sh_stop
  66. #define Y8950_shupdate YM3812_sh_update
  67.  
  68. #endif
  69.